package com.itheima.service.db;

import com.itheima.domain.UmsMenu;
import com.itheima.vo.PageBeanVo;
import com.itheima.vo.UmsMenuVo;

import java.util.List;

public interface UmsMenuService {

    //根据id查询
    UmsMenu findById(Long id);

    /**
     * 树形结构返回所有菜单列表
     * @return
     */
    List<UmsMenuVo> getTreeList();

    /**
     * 分页查询后台菜单
     * @param parentId
     * @param pageNum
     * @param pageSize
     * @return
     */
    PageBeanVo getList(Long parentId, Integer pageNum, Integer pageSize);

    /**
     * 添加后台菜单
     * @param umsMenu
     */
    void createBackgroundMenu(UmsMenu umsMenu);

    /**
     * 根据ID获取菜单详情
     * @param id
     * @return
     */
    UmsMenu getMenuDetails(Long id);

    /**
     * 修改后台菜单
     * @param id
     * @param umsMenu
     */
    void updateMenu(Long id, UmsMenu umsMenu);

    /**
     * 修改菜单显示状态
     * @param id
     * @param hidden
     */
    void updateHidden(Long id, Integer hidden);

    /**
     * 根据ID删除后台菜单
     * @param id
     */
    Boolean delete(Long id);
}
